const GlobalModel = {
  namespace: 'global',
  state: {
    collapsed: false,
    notices: [],
    pageWidth: 0,
    watermarkConfig: {
      watermark_txt: '查悦社保', // 水印的内容
      watermark_color: '#444', // 水印字体颜色
      watermark_fontsize: '14px', // 水印字体大小
      watermark_alpha: 0.2, // 水印透明度，要求设置在大于等于0.005
      watermark_x_space: 100, // 水印x轴间隔
      watermark_y_space: 50, // 水印y轴间隔
      watermark_x: 20, // 水印起始位置x轴坐标
      watermark_y: 20, // 水印起始位置Y轴坐标
      watermark_angle: 15, // 水印倾斜度数
      watermark_width: 200 // 水印宽度
    }
  },
  effects: {
    // effects
  },
  reducers: {
    changeLayoutCollapsed(
      state = {
        notices: [],
        collapsed: true
      },
      { payload }
    ) {
      return { ...state, collapsed: payload };
    },
    changeWidth(state, { payload }) {
      return {
        ...state,
        pageWidth: payload
      };
    },
    changeWatermark(state, { payload = {} }) {
      const { watermarkConfig } = state;
      return {
        ...state,
        watermarkConfig: { ...watermarkConfig, ...payload }
      };
    }
  },
  subscriptions: {
    setup({ history }) {
      // Subscribe history(url) change, trigger `load` action if pathname is `/`
      history.listen(({ pathname, search }) => {
        if (typeof window.ga !== 'undefined') {
          window.ga('send', 'pageview', pathname + search);
        }
      });
    }
  }
};
export default GlobalModel;
